/*
 * @Author: SakumyZ 
 * @Date: 2019-02-19 18:27:05 
 * @Description:  使用extends关键字，实现继承
 * @Last Modified by: SakumyZ
 * @Last Modified time: 2019-02-22 11:42:08
 */ 

class Person {
  constructor(name, age) {
    this.name = name
    this.age = age
  }

  sayHello() {
    console.log('%c Hello', 'color: red')
  }
}

class Chinese extends Person {
  // ! 子类的constructor中必须先调用super()
  // ! super是父类的构造器，子类 super就是父类构造器的一个引用
  // ! 当调用super后，子类构造器不会再去给父类传值，只能手动传，不然会得到undefined
  constructor(name, age, IdNumber) {
    // ! 子类中，this只能放在super后使用
    super(name, age, IdNumber)
    this.IdNumber = IdNumber
  }
}

const c = new Chinese('小明', '18', '421945199908121523')

console.log(c);
c.sayHello()